#region License

// Copyright (c) 2013, ClearCanvas Inc.
// All rights reserved.
// http://www.clearcanvas.ca
//
// This file is part of the ClearCanvas RIS/PACS open source project.
//
// The ClearCanvas RIS/PACS open source project is free software: you can
// redistribute it and/or modify it under the terms of the GNU General Public
// License as published by the Free Software Foundation, either version 3 of the
// License, or (at your option) any later version.
//
// The ClearCanvas RIS/PACS open source project is distributed in the hope that it
// will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General
// Public License for more details.
//
// You should have received a copy of the GNU General Public License along with
// the ClearCanvas RIS/PACS open source project.  If not, see
// <http://www.gnu.org/licenses/>.

#endregion

// This file is auto-generated by the ClearCanvas.Model.SqlServer.CodeGenerator project.

namespace ClearCanvas.ImageServer.Model
{
    using System;
    using System.Collections.Generic;
    using ClearCanvas.ImageServer.Model.EntityBrokers;
    using ClearCanvas.ImageServer.Enterprise;
    using System.Reflection;

[Serializable]
public partial class DeviceTypeEnum : ServerEnum
{
      #region Private Static Members
      private static readonly DeviceTypeEnum _Workstation = GetEnum("Workstation");
      private static readonly DeviceTypeEnum _Modality = GetEnum("Modality");
      private static readonly DeviceTypeEnum _Server = GetEnum("Server");
      private static readonly DeviceTypeEnum _Broker = GetEnum("Broker");
      private static readonly DeviceTypeEnum _PriorsServer = GetEnum("PriorsServer");
      private static readonly DeviceTypeEnum _PrimaryPacs = GetEnum("PrimaryPacs");
      #endregion

      #region Public Static Properties
      /// <summary>
      /// Workstation
      /// </summary>
      public static DeviceTypeEnum Workstation
      {
          get { return _Workstation; }
      }
      /// <summary>
      /// Modality
      /// </summary>
      public static DeviceTypeEnum Modality
      {
          get { return _Modality; }
      }
      /// <summary>
      /// Server
      /// </summary>
      public static DeviceTypeEnum Server
      {
          get { return _Server; }
      }
      /// <summary>
      /// Broker
      /// </summary>
      public static DeviceTypeEnum Broker
      {
          get { return _Broker; }
      }
      /// <summary>
      /// Server with Prior Studies for the Web Viewer
      /// </summary>
      public static DeviceTypeEnum PriorsServer
      {
          get { return _PriorsServer; }
      }
      /// <summary>
      /// Primary PACS Server, the ImageServer will accept duplicate SOP Instances from this server
      /// </summary>
      public static DeviceTypeEnum PrimaryPacs
      {
          get { return _PrimaryPacs; }
      }

      #endregion

      #region Constructors
      public DeviceTypeEnum():base("DeviceTypeEnum")
      {}
      #endregion
      #region Public Members
      public override void SetEnum(short val)
      {
          ServerEnumHelper<DeviceTypeEnum, IDeviceTypeEnumBroker>.SetEnum(this, val);
      }
      static public List<DeviceTypeEnum> GetAll()
      {
          return ServerEnumHelper<DeviceTypeEnum, IDeviceTypeEnumBroker>.GetAll();
      }
      static public DeviceTypeEnum GetEnum(string lookup)
      {
          return ServerEnumHelper<DeviceTypeEnum, IDeviceTypeEnumBroker>.GetEnum(lookup);
      }
      #endregion
}
}
